DynJava: Type Safe Dynamic Code Generation in Java
نویسندگان
چکیده
Dynamic code generation is a technique that generates and executes fragments of executable code during the run-time of an program to reduce the execution time of programs. However, most of currently available dynamic code generation systems have weakness on high-level language support for describing dynamic code fragment. Especially, safety of dynamic composition of code fragments is not sufficiently supported. To solve this, we present a Java-based strongly-typed language for dynamic code generation. This language gives precise types to dynamic code fragments, to guarantee the type-safety of dynamically-composed codes.
منابع مشابه
A Type-Safe Mobile-Code Representation Aimed at Supporting Dynamic Optimization At The Target Site
We introduce SafeTSA, a type-safe mobile code representation based on static single assignment form. We are developing SafeTSA as an alternative to the Java Virtual Machine, over which it has several advantages: (1) SafeTSA is better suited as input to optimizing dynamic code generators and allows CSE to be performed at the code producer's site. (2) SafeTSA provides incorruptible referential in...
متن کاملSafe Java Native Interface
Type safety is a promising approach to enhancing software security. Programs written in type-safe programming languages such as Java are type-safe by construction. However, in practice, many complex applications are heterogeneous, i.e., they contain components written in different languages. The Java Native Interface (JNI) allows type-safe Java code to interact with unsafe C code. When a type-s...
متن کاملImplementing Dynamic Language Features in Java Using Dynamic Code Generation
Compared to dynamic object-oriented languages like CommonLisp or Smalltalk, Java has a fairly simple and restrictive object and type system. Some of the key differences between Java and these other languages is that they offer structural conformance, automatic delegation, and dynamic mixins. When such constructs are needed in a language like Java, they are usually expressed in terms of standard...
متن کاملAutomatic Generation of Implementations For Object-Oriented Abstractions
We present a general-purpose code transformation system, the POET system, for the purpose of automatic code generation from high-level behavior specifications of object-oriented abstractions to low-level efficient implementations in C++ and Java. In particular, we have developed an extended finite-state-machine-based language, iFSM, which models the behavior logic together with implementation d...
متن کاملAdding Dynamic Types to C#
Developers using statically typed languages such as C and Java increasingly have to interoperate with APIs and object models defined in dynamic languages. This impedance mismatch results in code that is difficult to understand, awkward to analyze, and expensive to maintain. In this paper we describe new features in C4.0 that support the safe combination of dynamically and statically typed code ...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2001